草庐IT

php - Laravel Menu 自递归

全部标签

javascript - 为什么 Javascript 中的递归异步函数会导致堆栈溢出?

考虑这个片段:functionf(){returnnewPromise((resolve,reject)=>{f().then(()=>{resolve();});});}f();也可以这样写:asyncfunctionf(){returnawaitf();}f();如果您运行给定的两个代码中的任何一个,您将遇到此错误:(node:23197)UnhandledPromiseRejectionWarning:RangeError:Maximumcallstacksizeexceeded我的问题是为什么?在回答我的问题之前,请考虑我的论点:我了解递归的概念以及如果没有停止条件它如何导致堆

javascript - 试图理解递归函数的类似堆栈的行为

我正在MDN上阅读关于函数的文章,我到达了递归部分,但我不明白最后一部分谈论使用类似堆栈的行为。例子是那个:functionfoo(i){if(i关于该功能,我了解何时显示begin日志,但我不知道何时显示end日志。有人可以帮我解释一下吗? 最佳答案 所以基本上在执行i-1时每次调用foo时它都保持函数打开,它没有返回。它一直在继续,因此begin不断被调用,一旦它达到0,最后一个函数调用就会返回。一旦发生这种情况,其他foo调用也可以开始完成。它们将从最旧到最新完成。您可以通过PhilipRoberts使用放大镜看到它的可视化.

javascript - 尝试将嵌套循环转换为递归函数

我正在尝试创建以下嵌套循环的递归版本并获得与引用代码相同的结果。示例如下。这是Codepen上的一个版本http://codepen.io/anon/pen/XbQMLv(代码的目的是仅输出索引中整数的唯一组合。)原始代码和输出:varlen=4;for(vara=0;a递归代码和输出:varlen=4;varend=3;vardata=[];varloop=function(index){if(index===end){console.log(data);return;}for(vari=index;i不确定我在这里遗漏了什么。 最佳答案

javascript - JavaScript堆如何处理递归

您好,我上面的问题有点含糊,所以我会尽量使它更清楚。我有以下形式的代码:functionmain(){asyncfunctionrecursive(){vara="HelloWorld";varb="GoodbyeWorld";recursive();}recursive();}我遇到了堆内存不足的问题。假设我上面展示的是我的程序的行为方式,在递归函数中声明了a和b,我的问题是变量是否在递归函数中调用recursive时被销毁,或者它们是否会一直存在直到出现假设我让主函数运行足够长的时间以使其发生,则不再有递归调用并且主函数到达其终点。我担心它们在堆中仍然存在,因为我的真实程序在这些变

javascript - 如何在 jquery 或 javascript 和 PHP 中将 GPS 度数转换为十进制,反之亦然?

有人知道如何将GPS度数转换为十进制值,反之亦然吗?我必须开发一种用户可以插入地址并获取GPS值(度数和/或小数)的方法,但我需要知道的主要事情是如何转换这些值,因为用户也可以插入GPS值(度或小数)。因为我需要从谷歌地图获取map,所以需要小数点。我已经尝试了一些代码,但我得到了很大的数字......就像这个:functionConvertDMSToDD(days,minutes,seconds,direction){vardd=days+minutes/60+seconds/(60*60);//alert(dd);if(direction=="S"||direction=="W")

javascript - 将 PHP hash_hmac(sha512) 转换为 NodeJS

我正在移植一个php脚本到node,我对加密不是很了解。php脚本使用了这个函数:hash_hmac('sha512',text,key);因此,我需要在Nodejs中实现一个函数,以使用hmac方法(SHA512)返回键控哈希。据我所知,Node通过加密模块(http://nodejs.org/docs/latest/api/crypto.html#crypto_crypto)内置了此功能——但我不清楚如何重现此功能。如有任何帮助,我们将不胜感激。谢谢, 最佳答案 是的,使用加密库。varhash=crypto.createHma

javascript - 理解的递归偶数函数问题(Javascript)

问题很简单,我有一个来自“JavascriptAllonge”书的函数,但很难理解它。偶数函数调用如下:vareven=function(num){return(num===0)||!(even(num-1));}它检查数字是否是偶数,但我不明白如何。它递归地调用自己,从技术上讲,总是达到零,不是吗?它是如何工作的? 最佳答案 这是基于数字是奇数还是偶数的归纳定义-一个数字,n是“偶数”,当它前面的数字n-1是奇数时.这种想法自然是有道理的——4是偶数,而3是奇数。因此函数even定义为:1。even(0)为真-因为0为偶数2。ev

javascript - 循环内的递归函数

我一直在研究递归函数,并开始或多或少地了解它们。当我遇到这个问题时,我正在参加一个免费的代码训练营挑战,但我不明白。for循环内的递归函数:functionsteamroller(arr){varnewArr=[];for(vari=0;i我很难理解的是:newArr=newArr.concat(steamroller(arr[i]));在那一行,newArr连接到什么?该函数在.concat方法中再次被调用,对吗?但是那个for循环会发生什么?concat方法内部的函数调用是否强制退出循环?这是一个JSFiddle,我将每个newArr都记录到控制台,但我什至无法遵循它。数组是这样构

javascript - 遍历未知 DOM 的递归函数

我正在学习jsDOM,我想制作一个递归函数,我可以用它来遍历任何DOM中的所有节点.我成功了,但我不明白为什么我的第一次尝试不起作用:HTMLfunctionmostrarNodosV2(node){console.log(node.nodeName);if(node.firstElementChild!=null){node=node.firstElementChild;mostrarNodosV2(node);}if(node.nextElementSibling!=null){node=node.nextElementSibling;mostrarNodosV2(node);}}

javascript - 无法在 javascript/Polymer 中调用我的递归函数

我有一个搜索文件夹树并找到所选文件夹的父文件夹的功能。这是函数。getParentFolder:function(searchroot,childFolder){searchroot.subfolders.forEach(function(folder){if(folder.key==childFolder.key){returnsearchroot;}else{if(folder.subfolders){returnthis.getParentFolder(folder,childFolder);}}});}当我用this.getParentFolder(rootFolder,chi